package com.econvent.common.conn.po;

import lombok.Data;
import org.springframework.lang.NonNull;

import java.io.Serializable;

/**
 * 数据库连接的基础实体
 *
 * @author xiekun
 * @since 1.0
 */

@Data
public class BaseDataSource implements Serializable {
    /**
     * 数据源名称
     * */
    @NonNull
    private String datasourcename;

    /**
     * 数据源对应的数据库类型
     * */
    @NonNull
    private String type;

    /**
     * 数据源对应的数据库连接地址
     * */
    @NonNull
    private String host;

    /**
     * 数据源对应的数据库连接端口
     * */
    @NonNull
    private String port;

    /**
     * 数据源对应的数据库名称
     * */
    @NonNull
    private String dbname;

    /**
     * 数据源数据库账号
     * */
    @NonNull
    private String user;

    /**
     * 数据源数据库密码
     * */
    @NonNull
    private String password;

    /**
     * 数据源对应的数据库最小连接数
     * */
    private int minconn;

    /**
     * 数据源对应的数据库最大链接数
     * */
    private int maxconn;

    /**
     * 数据源对应的数据库连接超时时间
     * */
    private int timeout;

    /**
     * 数据源对应的数据库连接URL
     * */
    @NonNull
    private String url;

    /**
     * 数据源是否是集群连接
     * */
    private String iscluster;

    /**
     * 数据源对应的数据库连接驱动名称
     * */
    @NonNull
    private String driverName;

    /**
     * 数据源对应的数据库连接URL
     * */
    @NonNull
    private String connUrl;

    private String iscode;
    private boolean debug;
    private String typename;
    private String errormsg;

    private BaseDataSource() {
        this.minconn = 5 ;
        this.maxconn = 10 ;
    }
}
